package com.lastproject.ejb.dao;

import java.util.List;

import javax.ejb.Remote;

import com.lastproject.dto.CategoryDTO;
import com.lastproject.dto.EmailGroupDTO;
import com.lastproject.dto.SubcategoryDTO;
import com.lastproject.dto.SurveyDTO;
import com.lastproject.dto.TopicDTO;
import com.lastproject.dto.UserDTO;

@Remote
public interface SurveyDAORemote {

	void create(SurveyDTO entity);

	void edit(SurveyDTO entity);

	void remove(SurveyDTO entity);

	SurveyDTO findById(Object id);

	List<SurveyDTO> findAll();
		
	List<SurveyDTO> getSurveyListByUserId(int idUser);
	
	SurveyDTO getSurveyById(int idSurvey);
	
	TopicDTO getTopicBySurveyId(int idSurvey);
	
	CategoryDTO getCategoryBySurveyId(int idSurvey);
	
	SubcategoryDTO getSubcategoryBySurveyId(int idSurvey);
	
	UserDTO getUserBySurveyId(int idSurvey);

	SurveyDTO findByTitleTopicUser(String title, int idTopic, int idUser);

	SurveyDTO findLastByMe(int idUser);
	
	List<SurveyDTO> getSurveysByGroupId(int idGroup);
}
